This invention relates to a method and system for processing digital communication channels.
Digital channels in a communications system are typically processed for a number of purposes. For example, a voice channel in a digital communications system may require processing for echo canceling, dual tone multi-frequency (DTMF) decoding, and audio decoding, Digital signal processors (DSPs) are used to accomplish such processing. A DSP may store software algorithms enabling it to perform one or more channel processing tasks. This optimises the DSP to perform these channel processing tasks. (The term “optimise” is a common spelling variant of the term “optimize” with identical meaning.) Further, a DSP may be able to simultaneously handle processing for several channels. To cope with an ever increasing number of processing tasks and an ever increasing number of charnels to be processed, many DSP chips now include multiple DSP processing centers, known in the art as DSP cores, coordinated by a host processor.
While a DSP is processing a channel, the required channel processing task for the channel may change. By way of example, a DSP may be decoding an audio channel which had been compressed (i.e., encoded) to 64 kB/s in accordance with ITU recommendation G.711. However, while doing so, it may be that the bit rate of the channel drops to 16 kB/s in view of the level of compression dropping to that according to ITU recommendation G.728. Such a change could occur in response to a drop in the quality of service for the channel. Given a change in the processing requirements for a channel, in some instances the DSP may be able to dynamically switch to new software to handle the new processing task. For example, in U.S. Pat. No. 6,108,343 to Cruickshank et al. program code for several tasks may have been downloaded from slow memory to the DSP program memory. In such case, if the channel processing task changes to another task for which the DSP memory has the necessary program code, the DSP may quickly switch to the new software. However, the limited capacity of the DSP memory restricts the number of programs which may be held therein. Thus, there will be situations where a DSP cannot be readily provisioned for the new channel processing task.
Therefore, there remains a need for a system which can effectively respond to changes in the processing task for a channel.